第01章
测试基础与Kotlin测试环境搭建
软件测试金字塔 · 单元测试与UI测试区别 · JUnit/Mockito/Espresso概览 · Android Studio配置 · 第一个测试用例
环境入门
第02章
JUnit5核心概念与Kotlin集成
JUnit5架构 · @Test/@BeforeEach/@AfterEach · 断言机制 · Kotlin互操作 · 参数化测试
JUnit5注解
第03章
Mockito框架与Kotlin实践
Mock核心原理 · Stubbing · 验证交互 · ArgumentMatchers · Kotlin扩展 · @Mock/@InjectMocks
Mockito模拟
第04章
ViewModel单元测试
ViewModel生命周期 · LiveData/StateFlow测试 · 协程测试 · 模拟Repository · UI状态验证
ViewModel协程
第05章
Repository层单元测试
Repository模式 · Room测试 · Retrofit Mock · 数据转换/缓存 · Fake对象
Repository数据层
第06章
UseCase/Interactor单元测试
Clean Architecture · 业务逻辑 · 异常与边界 · 协程/Flow · 依赖注入
UseCase架构
第07章
数据层测试:Room与DataStore
@RunWith · DAO测试 · 数据库迁移 · SharedPreferences/DataStore · 文件存储
RoomDataStore
第08章
网络层测试:MockWebServer
MockWebServer搭建 · API响应测试 · 网络错误处理 · JSON解析 · 拦截器/日志
网络MockWebServer
第09章
协程与Flow测试
TestCoroutineDispatcher · 协程作用域 · Flow发射/收集 · 异常/取消 · Channel
协程Flow
第10章
依赖注入与测试 (Hilt/Dagger)
@HiltAndroidTest · 测试Module/Component · 注入Fake · 作用域测试
HiltDI
第11章
UI测试基础与Espresso入门
ViewMatchers/Actions/Assertions · onView/onData · 匹配器组合 · 点击/输入/滚动
EspressoUI
第12章
Activity与Fragment测试
ActivityScenario · FragmentScenario · 生命周期 · 导航 · 屏幕旋转 · SavedInstanceState
ActivityFragment
第13章
RecyclerView与ListView测试
onData/onChildView · 列表滚动 · 列表项点击 · 数据验证 · 空列表
RecyclerView列表
第14章
Navigation组件测试
导航图 · NavHost · DeepLink · 返回栈 · 导航参数传递
Navigation导航
第15章
Compose UI测试
Compose测试框架 · ComposeTestRule · 测试Composable · 交互/状态变化
ComposeUI
第16章
IdlingResource与异步测试
IdlingResource原理 · 注册/取消 · 自定义 · 网络/数据库 · 动画/延迟
异步IdlingResource
第17章
Barrier与等待策略
Espresso等待机制 · 自定义等待 · 异步回调 · Handler/Looper · WorkManager
等待Barrier
第18章
截图测试与视觉回归
Shot/Paparazzi · 配置截图 · UI一致性 · 不同屏幕尺寸 · CI集成
截图视觉回归
第19章
测试数据工厂与Fixture
Builder模式 · Fixture库 · 随机数据 · 数据复用 · 最佳实践
Fixture数据工厂
第20章
测试覆盖率与报告
JaCoCo · Kover · 行/分支覆盖率 · HTML报告 · CI覆盖率检查
覆盖率JaCoCo
第21章
CI/CD中的测试集成
GitHub Actions · Jenkins · GitLab CI · 测试分片/并行 · 报告通知
CI/CD自动化
第22章
性能测试与基准测试
Microbenchmark · 配置基准 · 方法性能 · 启动性能 · 布局性能
性能基准测试
第23章
安全测试与权限测试
运行时权限 · 安全配置 · 数据加密 · 网络安全性 · WebView
安全权限
第24章
国际化与本地化测试
多语言资源 · RTL布局 · 区域设置 · 日期/货币 · 字符串占位符
国际化本地化
第25章
Accessibility测试
Accessibility工具 · 内容描述 · 焦点导航 · 触摸目标 · 颜色对比度
无障碍Accessibility
第26章
测试反模式与最佳实践
常见反模式 · 代码复用 · 命名规范 · 组织分层 · 文档注释
最佳实践反模式
第27章
TDD与BDD实践
红绿重构 · Kotlin TDD示例 · Kotest/Spek · Given-When-Then · 行为驱动
TDDBDD
第28章
端到端测试与集成测试
Barista/Kakao · 完整用户流程 · 多Activity/Fragment · 后台服务 · 广播接收器
E2E集成
第29章
测试驱动重构
安全重构 · 测试作为文档 · 测试驱动设计 · 遗留代码策略 · 代码质量
重构质量
第30章
综合实战项目
完整测试套件 · 单元→UI全覆盖 · 报告与质量门禁 · 维护演进 · 课程总结
实战项目